/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package xmibase;

/**
 *
 * @author Felipe Gutierrez
 */


import java.util.ArrayList;

public class XmiPackage {
	


    private String id;
	private ArrayList<XmiClass> classes;
	private ArrayList<XmiPackage> packages;
	private ArrayList<XmiDataType> dataTypes;
	private ArrayList<XmiAssociation> associations;
	private ArrayList<XmiGeneralization> generations;
	private ArrayList<XmiTagDefinition> tagDefenition;
	private ArrayList<XmiTagValue> tagsValue;
	private ArrayList<XmiInterface> interfaces;
	private ArrayList<XmiAbstraction> abstractions;
    private String name;
   
    




	public XmiPackage() {

		this.packages = new ArrayList<XmiPackage>();
		this.classes = new ArrayList<XmiClass>();
		this.dataTypes = new ArrayList<XmiDataType>();
		this.generations = new ArrayList<XmiGeneralization>();
		this.associations = new ArrayList<XmiAssociation>();
		this.tagDefenition = new ArrayList<XmiTagDefinition>();
		this.tagsValue = new ArrayList<XmiTagValue>();
		this.abstractions = new ArrayList<XmiAbstraction>();
		this.interfaces = new ArrayList<XmiInterface>();
        

	}
	public void addAbstraction(XmiAbstraction xmiAbstraction) {
		this.abstractions.add(xmiAbstraction);

	}

	public void addInterface(XmiInterface xmiInterface) {
		this.interfaces.add(xmiInterface);
	}

	public ArrayList<XmiInterface> getInterfaces() {
		return interfaces;
	}

	public void setInterfaces(ArrayList<XmiInterface> xmiInterface) {
		this.interfaces = xmiInterface;
	}

	public ArrayList<XmiAbstraction> getAbstractions() {
		return abstractions;
	}

	public void setAbstractions(ArrayList<XmiAbstraction> xmiAbstraction) {
		this.abstractions = xmiAbstraction;
	}

	public ArrayList<XmiTagDefinition> getTagDefenition() {
		return tagDefenition;
	}

	public void setTagDefenition(ArrayList<XmiTagDefinition> tagDefenition) {
		this.tagDefenition = tagDefenition;
	}

	public ArrayList<XmiTagValue> getTagsValue() {
		return tagsValue;
	}

	public void setTagsValue(ArrayList<XmiTagValue> tagsValue) {
		this.tagsValue = tagsValue;
	}

	public void addTagValue(XmiTagValue tag) {
		this.tagsValue.add(tag);
	}

	public void addTagDefenition(XmiTagDefinition tag) {
		this.tagDefenition.add(tag);
	}

	public void addAssociation(XmiAssociation xmiAssociation) {

		this.associations.add(xmiAssociation);
	}

	public void addGeneralization(XmiGeneralization xmiGeneralization) {

		this.generations.add(xmiGeneralization);
	}

	public ArrayList<XmiAssociation> getAssociations() {
		return associations;
	}

	public void setAssociations(ArrayList<XmiAssociation> associations) {
		this.associations = associations;
	}

	public ArrayList<XmiGeneralization> getGenerations() {
		return generations;
	}

	public void setGenerations(ArrayList<XmiGeneralization> generations) {
		this.generations = generations;
	}

	public ArrayList<XmiDataType> getDataTypes() {
		return dataTypes;
	}

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public void setDataTypes(ArrayList<XmiDataType> dataTypes) {
		this.dataTypes = dataTypes;
	}

	public ArrayList<XmiPackage> getPackages() {

		return packages;
	}

	public void setPackages(ArrayList<XmiPackage> packages) {
		this.packages = packages;
	}

	public void addPackage(XmiPackage pkg) {
		this.packages.add(pkg);

	}

	public void addClass(XmiClass clss) {
		this.classes.add(clss);
	}

	public void addDataType(XmiDataType dataType) {
		this.dataTypes.add(dataType);
	}

	

	public ArrayList<XmiClass> getClasses() {
		return classes;
	}

	public void setClasses(ArrayList<XmiClass> classes) {
		this.classes = classes;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

    

   

   

    


   

}

